package com.ruoyi.studentFinancial.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 学生资助信息对象 xg_student_financial
 *
 * @author ruoyi
 * @date 2024-11-26
 */
public class XgStudentFinancial extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 学生学号 */
    @Excel(name = "学生学号")
    private String studentId;

    /** 序号 */
    @Excel(name = "序号")
    private Long sfId;

    /** 学校全称 */
    @Excel(name = "学校全称")
    private String schoolName;

    /** 院系全称 */
    @Excel(name = "院系全称")
    private String departmentName;

    /** 学段性质（数字） */
    @Excel(name = "学段性质", readConverterExp = "数=字")
    private String academicStage;

    /** 专业 */
    @Excel(name = "专业")
    private String major;

    /** 学历层次 */
    @Excel(name = "学历层次")
    private String educationLevel;

    /** 学制期（年） */
    @Excel(name = "学制期", readConverterExp = "年=")
    private Long studyDuration;

    /** 入学时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入学时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date enrollmentDate;

    /** 姓名 */
    @Excel(name = "姓名")
    private String name;

    /** 性别 */
    @Excel(name = "性别")
    private String gender;

    /** 民族 */
    @Excel(name = "民族")
    private String ethnicity;

    /** 政治面貌 */
    @Excel(name = "政治面貌")
    private String politicalStatus;

    /** 身份证号码 */
    @Excel(name = "身份证号码")
    private String idCardNumber;

    /** 家庭所在地 */
    @Excel(name = "家庭所在地")
    private String homeLocation;

    /** 申请贫困类型 */
    @Excel(name = "申请贫困类型")
    private String povertyType;

    /** 申请贫困类型补充说明 */
    @Excel(name = "申请贫困类型补充说明")
    private String otherDifficultyType;

    /** 困难等级 */
    @Excel(name = "困难等级")
    private String difficultyLevel;

    /** 国家助学金等级 */
    @Excel(name = "国家助学金等级")
    private String scholarshipLevel;

    /** 国家助学金金额 */
    @Excel(name = "国家助学金金额")
    private BigDecimal scholarshipAmount;

    /** 是否为扩招生 */
    @Excel(name = "是否为扩招生")
    private String isExpansion;

    /** 是否为退役士兵 */
    @Excel(name = "是否为退役士兵")
    private String isVeteran;

    /** 是否为公费师范生等定向培养 */
    @Excel(name = "是否为公费师范生等定向培养")
    private String isScholarship;

    /** 定向培养类型 */
    @Excel(name = "定向培养类型")
    private String orientationType;

    /** 未资助原因 */
    @Excel(name = "未资助原因")
    private String fundingReason;

    /** 审核状态 */
    @Excel(name = "审核状态")
    private String auditStatus;

    /** 拒绝原因 */
    @Excel(name = "拒绝原因")
    private String rejectionReason;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long deptId;

    /** 最后更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdateTime;

    public void setStudentId(String studentId)
    {
        this.studentId = studentId;
    }

    public String getStudentId()
    {
        return studentId;
    }
    public void setSfId(Long sfId)
    {
        this.sfId = sfId;
    }

    public Long getSfId()
    {
        return sfId;
    }
    public void setSchoolName(String schoolName)
    {
        this.schoolName = schoolName;
    }

    public String getSchoolName()
    {
        return schoolName;
    }
    public void setDepartmentName(String departmentName)
    {
        this.departmentName = departmentName;
    }

    public String getDepartmentName()
    {
        return departmentName;
    }
    public void setAcademicStage(String academicStage)
    {
        this.academicStage = academicStage;
    }

    public String getAcademicStage()
    {
        return academicStage;
    }
    public void setMajor(String major)
    {
        this.major = major;
    }

    public String getMajor()
    {
        return major;
    }
    public void setEducationLevel(String educationLevel)
    {
        this.educationLevel = educationLevel;
    }

    public String getEducationLevel()
    {
        return educationLevel;
    }
    public void setStudyDuration(Long studyDuration)
    {
        this.studyDuration = studyDuration;
    }

    public Long getStudyDuration()
    {
        return studyDuration;
    }
    public void setEnrollmentDate(Date enrollmentDate)
    {
        this.enrollmentDate = enrollmentDate;
    }

    public Date getEnrollmentDate()
    {
        return enrollmentDate;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setGender(String gender)
    {
        this.gender = gender;
    }

    public String getGender()
    {
        return gender;
    }
    public void setEthnicity(String ethnicity)
    {
        this.ethnicity = ethnicity;
    }

    public String getEthnicity()
    {
        return ethnicity;
    }
    public void setPoliticalStatus(String politicalStatus)
    {
        this.politicalStatus = politicalStatus;
    }

    public String getPoliticalStatus()
    {
        return politicalStatus;
    }
    public void setIdCardNumber(String idCardNumber)
    {
        this.idCardNumber = idCardNumber;
    }

    public String getIdCardNumber()
    {
        return idCardNumber;
    }
    public void setHomeLocation(String homeLocation)
    {
        this.homeLocation = homeLocation;
    }

    public String getHomeLocation()
    {
        return homeLocation;
    }
    public void setPovertyType(String povertyType)
    {
        this.povertyType = povertyType;
    }

    public String getPovertyType()
    {
        return povertyType;
    }
    public void setOtherDifficultyType(String otherDifficultyType)
    {
        this.otherDifficultyType = otherDifficultyType;
    }

    public String getOtherDifficultyType()
    {
        return otherDifficultyType;
    }
    public void setDifficultyLevel(String difficultyLevel)
    {
        this.difficultyLevel = difficultyLevel;
    }

    public String getDifficultyLevel()
    {
        return difficultyLevel;
    }
    public void setScholarshipLevel(String scholarshipLevel)
    {
        this.scholarshipLevel = scholarshipLevel;
    }

    public String getScholarshipLevel()
    {
        return scholarshipLevel;
    }
    public void setScholarshipAmount(BigDecimal scholarshipAmount)
    {
        this.scholarshipAmount = scholarshipAmount;
    }

    public BigDecimal getScholarshipAmount()
    {
        return scholarshipAmount;
    }
    public void setIsExpansion(String isExpansion)
    {
        this.isExpansion = isExpansion;
    }

    public String getIsExpansion()
    {
        return isExpansion;
    }
    public void setIsVeteran(String isVeteran)
    {
        this.isVeteran = isVeteran;
    }

    public String getIsVeteran()
    {
        return isVeteran;
    }
    public void setIsScholarship(String isScholarship)
    {
        this.isScholarship = isScholarship;
    }

    public String getIsScholarship()
    {
        return isScholarship;
    }
    public void setOrientationType(String orientationType)
    {
        this.orientationType = orientationType;
    }

    public String getOrientationType()
    {
        return orientationType;
    }
    public void setFundingReason(String fundingReason)
    {
        this.fundingReason = fundingReason;
    }

    public String getFundingReason()
    {
        return fundingReason;
    }
    public void setAuditStatus(String auditStatus)
    {
        this.auditStatus = auditStatus;
    }

    public String getAuditStatus()
    {
        return auditStatus;
    }
    public void setRejectionReason(String rejectionReason)
    {
        this.rejectionReason = rejectionReason;
    }

    public String getRejectionReason()
    {
        return rejectionReason;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }
    public void setLastUpdateTime(Date lastUpdateTime)
    {
        this.lastUpdateTime = lastUpdateTime;
    }

    public Date getLastUpdateTime()
    {
        return lastUpdateTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("studentId", getStudentId())
            .append("sfId", getSfId())
            .append("schoolName", getSchoolName())
            .append("departmentName", getDepartmentName())
            .append("academicStage", getAcademicStage())
            .append("major", getMajor())
            .append("educationLevel", getEducationLevel())
            .append("studyDuration", getStudyDuration())
            .append("enrollmentDate", getEnrollmentDate())
            .append("name", getName())
            .append("gender", getGender())
            .append("ethnicity", getEthnicity())
            .append("politicalStatus", getPoliticalStatus())
            .append("idCardNumber", getIdCardNumber())
            .append("homeLocation", getHomeLocation())
            .append("povertyType", getPovertyType())
            .append("otherDifficultyType", getOtherDifficultyType())
            .append("difficultyLevel", getDifficultyLevel())
            .append("scholarshipLevel", getScholarshipLevel())
            .append("scholarshipAmount", getScholarshipAmount())
            .append("isExpansion", getIsExpansion())
            .append("isVeteran", getIsVeteran())
            .append("isScholarship", getIsScholarship())
            .append("orientationType", getOrientationType())
            .append("fundingReason", getFundingReason())
            .append("auditStatus", getAuditStatus())
            .append("rejectionReason", getRejectionReason())
            .append("userId", getUserId())
            .append("deptId", getDeptId())
            .append("lastUpdateTime", getLastUpdateTime())
            .toString();
    }
}
